require 'oauth/signature/rsa/sha1'
require 'oauth/signature/hmac/sha1'
require 'oauth/signature/plaintext'
require 'oauth/request_proxy/action_controller_request'
require 'oauth/request_proxy/net_http'
require 'oauth/consumer'
require 'oauth/token'

class OAuth::InvalidRequest < Exception; end
class OAuth::AccessTokenRequired < Exception; end
class OAuth::RequestTokenRequired < Exception; end

module ::OAuth
  module RFC3986Encoder
    # see http://groups.google.com/group/oauth/browse_thread/thread/a8398d0521f4ae3d
    def rfc3986_escape(value)
      CGI.escape(value.to_s).gsub("%7E", "~").gsub("+", "%20")
    end
  end
end
require 'acts_as_oauth_consumer'
require 'acts_as_oauth_provider'
require 'acts_as_oauth_provider_instance'
require 'acts_as_oauth_resource' if defined?(ActiveResource)
require 'requires_oauth'
